Skip to content

Supremums ereal#203

Merged
CohenCyril merged 6 commits intomasterfrom
supremums_ereal
Jun 3, 2020
Merged

Supremums ereal#203
CohenCyril merged 6 commits intomasterfrom
supremums_ereal

Conversation

@affeldt-aist
Copy link
Member

The goal of this PR is to prove that a set of extended reals always has a supremum. For this purpose, I needed to generalize the definition of greatest elements, supremums, etc. from reals.v. I tried for a while to stick to the original pred-base definitions but sets from classical_sets.v turned out to be more handy and simplify proofs a bit.The first commit does the generalization, the second one adds the lemmas about extended reals.

@affeldt-aist
Copy link
Member Author

@amahboubi @strub do you have an opinion about replacing pred with set has done in this commit 48661cc ? It looked a bit more comfortable to me.

@affeldt-aist
Copy link
Member Author

@CohenCyril do you mean this commit f8d361a when you refer to the the new inE?

@affeldt-aist
Copy link
Member Author

@CohenCyril so your opinion is to stick to pred-based defnitions?

@affeldt-aist
Copy link
Member Author

(Trying to summarize.) pred-based predicates and the \in notation might be viable thanks to

For the time being, this PR sticks to set-based predicates, avoids the \in notation, and
tries not to unfold lb. ub, etc. That does not reduce the size of proofs much, but makes
appear a few factorizations and enables some generalizations.

@affeldt-aist
Copy link
Member Author

As an additional piece of information about pred vs. set, the commit 31f83c2 replays sequences.v with set-based predicates.

@affeldt-aist affeldt-aist added this to the 0.3.1 milestone May 26, 2020
@affeldt-aist affeldt-aist requested a review from CohenCyril May 29, 2020 12:41
@affeldt-aist affeldt-aist self-assigned this May 29, 2020
@affeldt-aist
Copy link
Member Author

We agreed on merging this PR during the last meeting but it seems that it incidentally implements one aspect of PR #117 (this was observed by @mkerjean ).

@amahboubi Are you also ok with merging?

- replace `pred` with `set` in `reals.v` and propagate
- replace `-' E` by `-%R @' E`
- move Section ArchiBound from `reals.v` to `classical_sets.v`
  + could factorize the two definitions of `nonempty`
- new lemmas `lee_ninfty_eq` and `lee_ninfty_eq`
- new lemma `image_set0` in `classical_sets.v`
- move `Section ERealOrderTheory` from `reals.v` to `ereal.v`
- new `Section ereal_supremum` in `ereal.v`
  + Lemma `ereal_supremums_neq0` (sets of supremums of extended reals are not empty)
- replace `case`s of `pselect` with `have`s of `pselect`
- replace expressions such as `(forall y, X y -> (x <= y)%O)`
  by `ub X` (resp. `lb`)
- avoid implicit unfolding of `ub`, `lb`, `down` by enforcing
  usage of `ubP`, `lbP`, `downP`
  + in particular, change the definition of supremum to
    `ub E `&` lb (ub E)`
- replace usage of `nonempty` by `!=set0`
- removed redundant `has_inP`, `has_supP`, `has_ubP`, `has_lbP`,
  `nonemptyPn`
@amahboubi
Copy link
Member

No objection.

@CohenCyril
Copy link
Member

No objection.

Thanks @amahboubi, I will merge then.

@CohenCyril CohenCyril merged commit d2d010f into master Jun 3, 2020
@affeldt-aist affeldt-aist deleted the supremums_ereal branch June 4, 2020 22:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants